Temporary Lines for Writing

ABSTRACT

A user is provided with guidelines that are temporarily displayed with content, in order to assist the user in accurately writing electronic ink. The guidelines may appear when the user moves a writing tool close to a display and writing surface. Alternately, the guidelines may appear after the user has begun to write electronic ink, so that the guidelines can correspond to the angle at which the user is writing, the size of the user&#39;s handwriting, or both. As the user writes the electronic ink onto the writing surface, the handwritten electronic ink is added to the content being rendered on the display. After the user has finished writing electronic ink and moves the writing tool away from the writing surface, the guidelines may be deleted. Accordingly, the user can employ the temporary guidelines without the guidelines themselves becoming a permanent part of the content.

RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.10/284,471, filed Oct. 31, 2002, now U.S. Pat. No. TBD, which is acontinuation-in-part application of U.S. patent application Ser. No.10/146,487, now U.S. Pat. No. 7,096,432, both of which are incorporatedby reference in their entirety herein.

FIELD OF THE INVENTION

The present invention relates to a user interface that providesguidelines for handwriting electronic ink. More particularly, thepresent invention relates to a user interface that displays temporaryguidelines in content, to help a user more accurately write electronicink into or over that content.

BACKGROUND OF THE INVENTION

As computers become more and more integrated into our modern society,there is a growing need for tools that will allow a user to efficientlyenter data into a computer. Some of the most desired input tools arethose that allow a user to enter data using natural input techniquesrather than typing on a physical or software QWERTY keyboard. Thesenatural input techniques, which include handwriting, offer users thepromise of a familiar and convenient method of creating data thatrequires no special skills.

To this end, great strides have been made in developing softwareapplications that allow a user to input data by handwriting. Theseapplications allow a user to employ a pen or stylus to write inelectronic ink. More particularly, these applications register thelocation of the stylus as it moves across a writing surface. Theselocations are then grouped together into a stroke, which conceptuallycorresponds to a stroke formed with physical ink. The strokes can thenbe collected into larger groups to form letters, words, and lines.Electronic ink can be converted into text, such as, for example, ASCIItext. The electronic ink also can be stored itself as content in anelectronic file.

Some software applications have even been developed that allow a user tohandwrite electronic ink directly into the existing content of anelectronic file. For example, electronic book applications displaycontent in the form of the text and drawings of a book. In addition toallowing a user to simply view text and images, some electronic bookapplications may allow a user to annotate portions of the content withelectronic ink. For example, some electronic book applications maypermit a user to handwrite annotations with electronic ink in themargins of the text. Still other electronic book applications may evenallow a user to handwrite annotations with electronic ink over the textor drawings themselves. Thus, these applications offer a user theability to add handwritten electronic ink to existing content.

Still other software applications provide a user with a transparentinterface that allows the user to write electronic ink over displayedcontent. More particularly, these applications provide a transparentuser interface that overlays some or all of the content rendered on adisplay. The user can then designate an insertion point somewhere in thedisplayed content, which may or may not be located in the contentdirectly under the transparent interface. The user then writes theelectronic ink into the transparent interface overlay, rather than intothe content underlying the transparent interface. A recognition processrecognizes text corresponding to the electronic ink, and inserts therecognized text into the displayed content at the insertion point. Thus,while it may appear that the user is writing the electronic ink into theunderlying content, the user is actually writing the electronic ink ontothe transparent interface “over” the underlying content. With someembodiments of these applications, text can be recognized from theelectronic ink and inserted immediately, while other embodiments ofthese applications may postpone recognizing the electronic ink until theuser has completed writing the electronic ink or specifically commandsthe application to recognize the written ink.

As may be appreciated, however, individual handwriting for electronicink can vary widely. While some people can handwrite even cursiveletters neatly and in a straight line, others may have difficultywriting legibly without some assistance. This difficulty can becompounded if the application is being implemented on an unfamiliarwriting surface, such as a large, unwieldy digitizing display.Accordingly, there is a need for a handwriting input interface that willassist a user in legibly handwriting electronic ink into or overexisting content.

SUMMARY OF THE INVENTION

Advantageously, the temporary lines created according to the inventionprovide the user with guidelines that are displayed with content, inorder to assist the user in neatly and accurately writing electronic inkeither into the content or over the content. The invention may beemployed, for example, when the user is displaying content on a displaythat also accepts electronic ink from handwriting. The guidelines mayappear when the user moves a writing tool, such as a stylus or pen,close to the electronic ink input area of a writing surface.Alternately, the guidelines may appear after the user has begun to writeelectronic ink, so that the guidelines can correspond to the angle atwhich the user is writing, the size of the user's handwriting, or both.After the user has finished writing electronic ink and moves the writingtool away from the writing surface or outside of the electronic inkinput area, the guidelines are hidden, and are not added to thedisplayed content. In this way, the user can employ the temporaryguidelines to accurately and legibly write electronic ink into or overcontent, without the guidelines themselves becoming a permanent part ofthe content.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing summary of the invention, as well as the followingdetailed description of preferred embodiments, will be better understoodwhen read in conjunction with the accompanying drawings.

FIG. 1 shows a schematic diagram of a general-purpose digital computingenvironment that can be used to implement various aspects of theinvention.

FIG. 2 illustrates a block diagram showing components of a tool forproviding temporary handwriting guidelines according to one embodimentof the invention.

FIG. 3 illustrates a flowchart for providing temporary handwritingguidelines according to an embodiment of the invention.

FIGS. 4A-4C illustrate user interfaces demonstrating the appearance anddisappearance of temporary handwriting guidelines according to anembodiment of the invention.

FIG. 5 illustrates a flowchart for providing temporary handwritingguidelines according to another embodiment of the invention.

FIG. 6 illustrates a flowchart for providing temporary handwritingguidelines according to yet another embodiment of the invention.

FIGS. 7A and 7B illustrate user interfaces demonstrating the display anddeletion of temporary handwriting guidelines according to still otherembodiments of the invention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

Overview

The present invention relates to a tool that provides temporaryguidelines to assist a user in handwriting electronic ink into or overcontent. A temporary line tool according to the invention may beimplemented with instructions that can be executed on a computingdevice. Accordingly, an exemplary computing environment for executingsuch instructions will be described. Various interfaces demonstratingthe operation and use of the invention will also be described, alongwith the components and functions of a temporary line tool according tothe invention.

Exemplary Operating Environment

As previously noted, the temporary line tool of the invention may beimplemented using software. That is, the temporary line tool may bedescribed in the general context of computer-executable instructions,such as program modules, executed by one or more computing devices.Generally, program modules include routines, programs, objects,components, data structures, etc. that perform particular tasks orimplement particular abstract data types. Typically the functionality ofthe program modules may be combined or distributed as desired in variousembodiments.

Because the invention may be implemented using software, it may behelpful for a better understanding of the invention to briefly discussthe components and operation of a typical programmable computer on whichvarious embodiments of the invention may be employed. Such an exemplarycomputer system is illustrated in FIG. 1. The system includes ageneral-purpose computer 100. This computer 100 may take the form of aconventional personal digital assistant, a tablet, desktop or laptoppersonal computer, network server or the like.

Computer 100 typically includes at least some form of computer readablemedia. Computer readable media can be any available media that can beaccessed by the computer 100. By way of example, and not limitation,computer readable media may comprise computer storage media andcommunication media. Computer storage media includes volatile andnonvolatile, removable and non-removable media implemented in any methodor technology for storage of information such as computer readableinstructions, data structures, program modules or other data. Computerstorage media includes, but is not limited to, RAM, ROM, EEPROM, flashmemory or other memory technology, CD-ROM, digital versatile disks (DVD)or other optical storage, magnetic cassettes, magnetic tape, magneticdisk storage or other magnetic storage devices, or any other mediumwhich can be used to store the desired information and which can beaccessed by the computer 100.

Communication media typically embodies computer readable instructions,data structures, program modules or other data in a modulated datasignal such as a carrier wave or other transport mechanism and includesany information delivery media. The term “modulated data signal” means asignal that has one or more of its characteristics set or changed insuch a manner as to encode information in the signal. By way of example,and not limitation, communication media includes wired media such as awired network or direct-wired connection, and wireless media such asacoustic, RF, infrared and other wireless media. Combinations of any ofthe above should also be included within the scope of computer readablemedia.

The computer 100 typically includes a processing unit 110, a systemmemory 120, and a system bus 130 that couples various system componentsincluding the system memory to the processing unit 110. The system bus130 may be any of several types of bus structures including a memory busor memory controller, a peripheral bus, and a local bus using any of avariety of bus architectures. The system memory 120 includes read onlymemory (ROM) 140 and random access memory (RAM) 150. A basicinput/output system 160 (BIOS), containing the basic routines that helpto transfer information between elements within the computer 100, suchas during start-up, is stored in the ROM 140.

The computer 100 may further include additional computer storage mediadevices, such as a hard disk drive 170 for reading from and writing to ahard disk, a magnetic disk drive 180 for reading from or writing to aremovable magnetic disk 190, and an optical disk drive 191 for readingfrom or writing to a removable optical disk 192, such as a CD ROM orother optical media. The hard disk drive 170, magnetic disk drive 180,and optical disk drive 191 are connected to the system bus 130 by a harddisk drive interface 192, a magnetic disk drive interface 193, and anoptical disk drive interface 194, respectively. The drives and theirassociated computer-readable media provide nonvolatile storage ofcomputer readable instructions, data structures, program modules, andother data for the personal computer 100. It will be appreciated bythose skilled in the art that other types of computer readable mediathat may store data that is accessible by a computer, such as magneticcassettes, flash memory cards, digital video disks, Bernoullicartridges, random access memories (RAMs), read only memories (ROMs),and the like, may also be used in the example operating environment.Also, it should be appreciated that more portable embodiments of thecomputer 100, such as a tablet personal computer or personal digitalassistant, may omit one or more of the computer storage media devicesdiscussed above.

A number of program modules may be stored on the hard disk drive 170,magnetic disk 190, optical disk 192, ROM 140, or RAM 150, including anoperating system 195, one or more application programs 196, otherprogram modules 197, and program data 198. A user may enter commands andinformation into the computer 100 through various input devices, such asa keyboard 101 and a pointing device 102 (for example, a mouse,touchpad, or pointing stick). As previously noted, the invention isdirected to a tool for guiding handwriting input. As will be appreciatedby those of ordinary skill in the art, while handwriting input can begenerated using a variety of pointing devices, the most convenientpointing device for creating handwriting input is a pen. Accordingly,the computing device 120 will typically include a digitizer 165(sometimes referred to as a graphics pad) and a stylus or pen 166, whicha user may employ to create handwriting input.

As will be appreciated by those of ordinary skill in the art, with someembodiments, the digitizer 165 receives handwriting input when thestylus or pen 166 contacts the surface of the digitizer 165. With otherembodiments, the digitizer 165 may receive handwriting input from alight beam generated by the pen 166, by tracking the angular movement ofa mechanical arm supporting the pen 166, or by another suitabletechnique. The computer 100 may also have additional input devices, suchas a joystick, game pad, satellite dish, scanner, touch screen, or thelike.

These and other input devices often are connected to the processing unit110 through a serial port interface 106 that is coupled to the systembus 130, but may be connected by other interfaces, such as a parallelport, game port, IEEE-1394B bus, or a universal serial bus (USB).Further still, these devices may be coupled directly to the system bus130 via an appropriate interface (not shown). A monitor 107 or othertype of display device is also connected to the system bus 130 via aninterface, such as a video adapter 108. In addition to the monitor 107,personal computers typically include other peripheral output devices(not shown), such as speakers and printers. As will be appreciated bythose of ordinary skill in the art, the monitor 107 may incorporate thedigitizer 165, to form a digitizing display 165. This arrangementconveniently allows a user to employ the pen 166 to point directly toobjects displayed on the digitizing display by contacting the displayscreen of the display 165.

The computer 100 may operate in a networked environment using logicalconnections to one or more remote computers, such as a remote computer109. The remote computer 109 may be a server, a router, a network PC, apeer device, or other common network node, and typically includes manyor all of the elements described above relative to the computer 100,although only a memory storage device 111 with related applicationsprograms 196 have been illustrated in FIG. 1. The logical connectionsdepicted in FIG. 1 include a local area network (LAN) 112 and a widearea network (WAN) 113. Such networking environments are commonplace inoffices, enterprise-wide computer networks, intranets, and the Internet,and thus will not be explained in detail here.

When used in a LAN networking environment, the computer 100 is connectedto the local network 112 through a network interface or adapter 114.When used in a WAN networking environment, the personal computer 100typically includes a modem 115 or other means for establishing acommunications link over the wide area network 113, e.g., to theInternet. The modem 115, which may be internal or external, may beconnected to the system bus 130 via the serial port interface 106. In anetworked environment, program modules depicted relative to the personalcomputer 100, or portions thereof, may be stored in a remote memorystorage device. Of course, it will be appreciated that the networkconnections shown are exemplary and other techniques for establishing acommunications link between the computers may be used. The existence ofany of various well-known protocols such as TCP/IP, Ethernet, FTP, HTTPand the like is presumed, and the system may be operated in aclient-server configuration to permit a user to retrieve web pages froma web-based server. Any of various conventional web browsers may be usedto display and manipulate data on web pages.

The Temporary Line Tool

FIG. 2 illustrates a temporary line tool 201 for creating temporaryguidelines. As seen in this figure, the temporary line tool 201 includesa pen position detection module 203 and a guideline creation module 205.The tool 201 also includes an ink collection module 207, a parser 209,and a handwriting recognition module 211. Each of these components willbe discussed in detail below.

The pen position detection module 203 detects the position of a pen orstylus 166, relative to displayed content, that the user will employ tohandwrite electronic ink into or over that content. For example, if theuser is employing a stylus 166 with a digitizing display 165 asillustrated in FIG. 2, then the pen position detection module 203 willdetect the position of the stylus 166 relative to the digitizing display165 and thus the content rendered on the display 165. With somedigitizing displays, the pen position detection module 203 will detectthe position of the stylus 166 when it contacts the surface of thedigitizing display 165. With other types of digitizing displays,however, such as the digitizing display 165 employed with theillustrated embodiment, the pen position detection module 203 can detectwhen the stylus 166 is simply hovering over the surface of thedigitizing display 165.

When the pen position detection module 203 detects that the position ofa stylus 166 is relatively close to the digitizing display 165, itpasses this position information along to the guideline creation module205. If the detected position of the stylus 166 is over the userinterface for a software application that can accept electronic inkinput produced with the stylus 166, then the guideline creation module205 will create and render temporary guidelines on the display 165.Thus, the pen position detection module 203 and the guideline creationmodule 205 will determine when the stylus 166 moves toward and away froman area corresponding to content rendered on the display 165.

More particularly, as noted above, with some digitizing displays the penposition detection module 203 will detect when the stylus 166 ishovering above the display 165. With these embodiments, the pen positiondetection module 203 will report to the guideline creation module 205when it detects a stylus 166 hovering just above the display 165, andthe position of the stylus 166 relative to the surface of the display165. Alternately, if the digitizing display 165 only allows the penposition detection module 203 to detect the position of a stylus 166contacting the digitizing display 165, then when the user contacts thestylus 166 with the surface of the digitizing display 165, the penposition detection module 203 will register the position of contact andprovide this information to the guideline creation module 205.

In response to receiving stylus position information from the penposition detection module 203, the guideline creation module 205 willdetermine if the position of the stylus 166 is over an electronic inkinput area. That is, the guideline creation module will determine if thestylus 166 is over an area corresponding to a user interface that willaccept electronic ink created with the stylus 166. For some embodimentsof the invention, electronic ink created with the stylus 166 is addeddirectly to content already displayed on the digitizing display 165.With these embodiments, the software application rendering the contentwill define boundaries, such as a “window,” for accepting electronic inkdata. If the stylus 166 is located above an area of the digitizingdisplay 165 outside of those boundaries, then the guideline creationmodule 205 will determine that the position of the stylus 166 is notover an electronic ink input area.

For still other embodiments of the invention, electronic ink createdwith the stylus 166 is added to a transparent interface provided overunderlying content rendered by one or more other software applications.With these embodiments, the transparent interface defines boundaries foraccepting electronic ink input. Again, if the stylus 166 is locatedabove an area of the digitizing display 165 outside of those boundaries,then the guideline creation module 205 will determine that the positionof the stylus 166 is not over an electronic ink input area.

If the guideline creation module 205 determines that the stylus 166 isover an electronic ink input area, it will create guidelines forrendering on the display 165. More particularly, the guideline creationmodule 205 will create image data defining the characteristics of one ormore guidelines, including its size, color, and the location at which itis to appear on the display 165. This image data will then be providedto the display 165, so that the guideline (or guidelines) may berendered by the display 165. As will be discussed in detail below, theguidelines will be positioned at a location corresponding to thedetected position of the stylus 166.

With some embodiments of the invention, the guideline creation module205 will locate the guideline or guidelines directly below the positionof the stylus 166, regardless of the content in that location that isalready being rendered by the display 165. Thus, in some situations, theguideline or guidelines may appear superimposed over text or images thatare already being rendered on the display 165. Such images may include,for example, ink, watermarks or existing rules or lines.

With alternate embodiments of the invention, however, the guidelinecreation module 205 will only place the guidelines over particular typesof content. For example, some embodiments of the invention may onlyplace guidelines over “white space” content (that is, content which doesnot include any text or images). With these embodiments, the guidelinecreation module 205 may, for example, determine the white space of aminimum total area nearest to the stylus position given by the penposition detection module 203, and create one or more guidelines overthis white space. Alternately, the guideline creation module 205 maycreate one or more guidelines located at the nearest white space to thestylus position having a minimum width, a minimum height, or acombination of the two. The image data for the guidelines created by theguideline creation module 205 is then rendered on the display 165 overthe located white space. The guidelines thus are not overlaid on top ofthe images, text or other electronic ink currently shown in the display165. Of course, still other embodiments of the invention may only locateguidelines over any possible combination of content types, such as overtext content, but not over images or existing electronic ink, over imagecontent, but not over text content or existing electronic ink, or overexisting electronic ink, but not over text content or image content.

With some embodiments of the invention, the guideline or guidelines maybe rendered by the software application already rendering the contentshown on the display 165. For example, if guidelines are created toassist a user in adding electronic ink directly into content beingrendered by of a software application, then that application may renderthe guidelines as well. Alternately, the guideline or guidelines may berendered by a separate or special-purpose software application. Also,with some embodiments of the invention, the appearance of the guidelinesmay be selected to visibly distinguish the guidelines from existingcontent being rendered on the display 165. For example, the color of theguidelines may be selected so as to be easily distinguished fromexisting text or images.

For some embodiments of the invention, the guideline creation module 205may create image data for only a single guideline. With otherembodiments of the invention, however, the guideline creation module 205may create image data for two, three, or even more vertically-stackedguidelines. Also, the guidelines may extend the entire length of theelectronic ink input area. Alternately, the guidelines may only extendfor a limited distance, or for a distance based upon the location of theguidelines. For example, the guidelines may have a fixed length of 2, 3,or 4 inches, or any other desired length. On the other hand, if theguidelines are only being rendered over a particular type of content,such as white space content, then the guidelines may be only as long oras high as the amount of content over which they can be rendered. Forexample, if the guidelines are to only be rendered in white space, theymay have a height and length sufficient to fill the entire white spacecontent over which they are displayed.

Once the guideline or guidelines are rendered on the display 165, itwill continue to be displayed until the pen position detection module203 detects that the stylus 166 has moved a threshold distance beyondits original position. This will maintain the guideline or guidelines ina fixed position while the user handwrites electronic ink. If the stylus166 moves too far from its original position, however, then theguideline creation module 205 will discontinue displaying the guidelineor guidelines.

More particularly, if the user moves the stylus 166 too far away (suchas beyond a predetermined removal distance) from the surface of thedigitizing display 165, then the pen position detection module 203detects the removal of the stylus 166. In response, the guidelinecreation module 205 will send instructions to the display 205 todiscontinue displaying the existing guideline or guidelines. Similarly,if the stylus moves to a new position outside of the electronic inkinput area, the pen position detection module 203 will detect the newposition of the stylus 166, and the guideline creation module 205 willsend instructions to the display 205 to discontinue displaying theexisting guideline or guidelines. The instructions to discontinuedisplaying the existing guideline or guidelines may be instructions to“hide” the guideline or guidelines, or they may instructions to deletethe guideline or guidelines. If a guideline is hidden, then theguideline will be redisplayed at its original location if the stylus 166moves back to its original location (or sufficiently close to itsoriginal location). If a guideline is deleted, however, then a newguideline will be created (which may have a different size, position ororientation) if the stylus 166 returns to its original location.

The user's handwriting may likewise lead the user to move the stylus 166beyond its original position by the threshold distance, but to alocation still within the electronic ink input area. The pen positiondetection module 203 will detect the new position of the stylus 166,and, in response, the guideline creation module 205 will createguidelines corresponding to the new position of the stylus 166. Withsome embodiments of the invention, the guideline creation module 203 mayinstruct the display 165 to hide or delete the previous guideline orguidelines, and create image data for a new guideline or guidelines.Alternately, the guideline creation module 203 may simply provide newimage data that will extend the existing guideline or guidelines toreach the new position of the stylus 166. The guidelines may be extendedtoward the new position of the stylus 166 by adding additionalguidelines, by increasing the length of the existing guidelines, orboth, depending upon the new position of the stylus 166 relative to theorientation of the existing guidelines.

It should be noted that, in addition to the threshold and removaldistances, the guideline creation module 207 can also extend, hide ordelete the guideline or guidelines based upon the amount of time thatthe stylus 166 stays beyond the threshold or removal distance. Forexample, if the user moves the stylus 166 beyond the threshold distancefor only a short period of time (for example, less than a threshold timeof 1 second), then the guideline creation module 207 may not extend theguideline or guidelines to the new stylus position. Instead, theguideline creation module 207 may continue to display the guideline orguidelines until the stylus 166 returns to within the removal distance.Alternately, the creation module 207 may hide the guideline orguidelines. If, however, the user moves the stylus 166 beyond thethreshold distance for a longer than the threshold period of time, thenthe guideline creation module 207 may extend the guideline or guidelinesto the new stylus position or delete the original guideline orguidelines.

Similarly, if the user moves the stylus 166 beyond the removal distancefrom the display 165 for a short period of time, then the guidelinecreation module 207 may continue to display the guideline or guidelinesuntil the time period expires or the stylus 166 is returned to withinthe removal distance. Alternately, the guideline creation module 207 mayhide the guideline or guidelines. If, however, the stylus 166 movesbeyond the removal distance from the display 165 for more than athreshold time, then the guideline creation module 207 may delete theguideline or guidelines.

It should also be noted that the threshold distance, the threshold timeor both may vary depending upon the direction in which the stylus 166 ismoved relative to the orientation of the guidelines. For example, thethreshold distance may be smaller in the direction perpendicular to theguidelines than in the direction parallel to the guidelines, to allowthe user to write large letters without extending the guidelines. Also,the threshold time for moving the stylus outside of the removal distancemay be different than the threshold time for moving the stylus beyondthe threshold distance.

Once the guideline or guidelines have been rendered on the display 165,the user may employ the guideline or guidelines to guide his or herhandwriting with the stylus 166. That is, the user may adjust his or herhandwriting so that the user's handwriting is within the area defined bythe guideline or guidelines. As a user writes with the stylus 166, theink collection module 207 tracks the movement of the stylus 166 toproduce corresponding electronic ink.

With some embodiments of the invention, the electronic ink is inserteddirectly into the content at the location of the guidelines. That is,the electronic ink is added to the content in the same location at whichit is written. Additionally, with some embodiments of the invention, theelectronic ink may be rendered by the same software applicationdisplaying the content. For example, if user writes the electronic inkinto the content of a Microsoft Word file being displayed by theMicrosoft Word user interface, then the electronic ink collected by theink collection module 207 will be added directly into the content ofthat Word file. Moreover, the Microsoft Word user interface may renderthe electronic ink. Thus, with these embodiments, the user can employthe guidelines to write electronic ink directly into displayed content.The electronic ink can be added to the displayed content in its originalform. Alternately, the electronic ink can be converted into text data bya recognition process and then added directly into the content as text.

In other embodiments of the invention, however, the electronic inkcreated with the stylus 166 is received and displayed in a transparentuser interface. With these embodiments employing a transparent userinterface, the user can select an insertion point in content beingrendered by a separate user interface. This displayed content may or maynot underlie the transparent user interface. As the user writes theelectronic ink with the stylus 166, the ink is displayed by thetransparent user interface and recognized as text. The recognized textis then inserted into the content of the other user interface at thedesignated insertion point. Thus, for these embodiments, the electronicink may be written over displayed content, rather than into displayedcontent as described immediately above.

The operation of one embodiment of the invention will now be describedwith reference to the flowchart illustrated in FIG. 3 and to the userinterfaces shown in FIGS. 4A-4C. As shown in FIG. 4A, the display 165initially displays content 401. This content may include, for example,both typed text 403 and electronic ink 405. In this illustratedembodiment, the user has not yet moved the stylus 166 sufficiently closeto the digitizing display 165 for the pen position detection module 203to detect the position of the stylus 166. When the user does move thestylus 166 sufficiently close to the digitizing display 165, in stepS301 the pen position detection module 203 detects the position of thestylus 166 proximal to the digitizing display 165.

Next, in step S303, the guideline creation module 205 receives theposition of the stylus 166 from the pen position detection module 203.If the stylus 166 is over an electronic ink input area, the guidelinecreation module 205 creates guidelines 407 corresponding to the detectedposition of the stylus 166 in step S303. That is, the guideline creationmodule 205 creates the image data for rendering guidelines on thedisplay 165. In response, the display 165 displays guidelines 407 on thedisplay 165. As illustrated in FIG. 4B, the guidelines 407 are renderedwithin the content 401 already rendered on the display 165. Also, theguidelines 407 are of only limited length, and do not extend over theentire electronic ink input area.

Using these guidelines 407, a user can then employ the stylus 166 tohandwrite words in electronic ink 409. This electronic ink 409 can thenbe collected by the ink collection module 207, and added to the contentalready rendered on the display 165. If the user writes the electronicink 409 so that the position of the stylus 166 moves a thresholddistance beyond its original location, then the pen position detectionmodule 203 will determine a new position for the stylus 166 in step 305.In step S307, the pen detection module 203 and the guideline creationmodule 205 determine whether the user has lifted the stylus 166 beyond athreshold distance from the digitizer 165, and whether the new positionof the stylus 166 is still above the electronic ink input area. If theuser has not lifted the stylus 166 a threshold distance away from thesurface of the digitizer 165 and the new position of the stylus 166 isabove the electronic ink input area, then the guideline creation module205 creates new guidelines 407 corresponding to the new stylus position.As previously noted, the new guidelines 407 may replace the previouslyexisting guidelines 407, or they may simple extend the previouslyexisting guidelines 407 toward the new position of the stylus 166.

If, on the other hand, the user has completed writing the desiredelectronic ink 409 using the guidelines 407, the user will lift thestylus 166 at least the removal distance away from the display 165 asillustrated in FIG. 4C. Alternately, the user may move the stylus 166outside of the electronic ink input area. If either occurs, theguideline creation module 205 will instruct the display 165 todiscontinue displaying the guidelines 407 in step S309, as illustratedin FIG. 4C.

In the above-illustrated embodiment, the guidelines have a fixeddirection and spacing. With alternate embodiments of the invention,however, both of the direction and spacing of the guidelines may bemodified to adapt to the user's handwriting. Returning now to FIG. 2,the electronic ink written by the user will be collected by the inkcollection module 207 and submitted to the parser 209 for parsing. Aswill be appreciated by those of ordinary skill in the art, the parser209 uses a variety of heuristics to group electronic ink strokes intowords, lines, and larger collections. The parser 209 may, for example,group electronic ink strokes based upon the sequence and timing in whichthey were created, their proximity, or other criteria known in the art.As a function of grouping electronic ink strokes, the parser 209 mayalso determine an angle at which words in the electronic ink have beenwritten. With various embodiments of the invention, this angleinformation may be employed by the guideline creation module 205 tocreate the guidelines.

For example, referring now to the flowchart shown in FIG. 5 and the userinterface illustrated in FIG. 7A, in step S501 the user begins writingelectronic ink. The electronic ink is then collected by the inkcollection module 207, and is provided to the parser 209 in step S503.Next, in step S505, the parser determines an angle at which theelectronic ink has been written. Then, in step S507, the guidelinecreation module 205 creates guidelines at an angle provided by theparser 209, and in step S509 are rendered by the display 165 asillustrated in FIG. 7A. With some embodiments of the invention, theguideline creation module 203 may initially create horizontalguidelines, and then correct the angle of the guidelines as the userbegins to write the electronic ink at an angle. Alternately, theguideline creation module 205 may postpone creating guidelines untilafter the user has written a sufficient amount of electronic ink for theparser 209 to provide angle information to the guideline creation module205.

With some embodiments of the invention, the angle of the guidelines mayeven change as the direction of the user's handwriting changes. Forexample, with various embodiments of the invention, if the direction ofthe user's handwriting changes beyond a threshold value from its initialdirection (such as by, e.g., 10°, then the direction of the guidelinewill also be changed to match the direction of the user's handwriting.

The guideline creation module 205 may additionally or alternately modifythe spacing between multiple guidelines based upon the user'shandwriting, as previously noted. For example, referring back to FIG. 2,the electronic ink written by a user may be submitted to the handwritingrecognition module 211. As known to those of ordinary skill in the art,the handwriting recognition module 211 employs a variety of algorithmsto recognize individual letters and words from handwritten electronicink. During this process, the handwriting recognition module 211 maydetermine an average letter height of letters written in the electronicink. Using this letter height information, the guideline creation module203 may then modify the distance between guidelines to correspond withthe user's handwriting.

This process will be described in more detail, referring now to theflowchart illustrated in FIG. 6 and the user interface illustrated inFIG. 7B. First, in step S601, the ink collection module 207 provides thecollected ink to the parser 209. Next, in step S603, the parser providesorganized ink strokes to the ink recognition module 211. In step S605,the recognition module 211 determines the letter height of the lettersrecognized from the electronic ink, and provides this information to theguideline creation module 205. Then in step S607, the guideline creationmodule 205 creates guidelines having a spacing distance corresponding tothe letter height provided by the ink recognition module 211, as shownin FIG. 7B. As with the previously described embodiment, the guidelinecreation module 205 may initially create guidelines having a defaultdistance between them, and subsequently adjust the distance between theguidelines after receiving the letter height information from the inkrecognition module 211. Alternately, the guideline creation module 205may postpone creating the guidelines until the user has written enoughelectronic ink for the ink recognition module 211 to establish theletter height information.

CONCLUSION

Accordingly, the temporary guideline tool of the invention providestemporary guidelines to assist a user in neatly and accurately writingelectronic ink. Moreover, the guidelines appear within displayedcontent, thereby assisting the user in properly writing electronic inkinto or over the content. The guidelines are then removed when the userhas finished writing the electronic ink.

The invention may include the elements and steps described herein in anycombination or sub combination. Accordingly, there are any number ofalternative combinations for defining the invention, which incorporateone or more elements from the specification, including the description,claims, and drawings, in various combinations or sub combinations. Itwill be apparent to those skilled in the relevant technology, in lightof the present specification, that alternate combinations of aspects ofthe invention, either alone or in combination with one or more elementsor steps defined herein, may be utilized as modifications or alterationsof the invention or as part of the invention. For example, variousembodiments of the invention that are used with East Asian languages,such as Japanese kanji, may employ guidelines formed by boxes ratherthan straight lines. It is intended that the written description of theinvention contained herein covers all such modifications andalterations. For instance, in various embodiments, a certain order tothe data has been shown. However, any reordering of the data isencompassed by the present invention. Also, where certain units ofproperties such as size (e.g., in bytes or bits) are used, any otherunits are also envisioned.

1. A method of providing guidelines for handwriting, comprising:displaying content; detecting a position of a stylus relative to thedisplayed content; displaying at least one guideline in the content at alocation corresponding to the detected position of the stylus; detectingmovement of the stylus outside of an electronic ink input areacorresponding to the displayed content for longer than a thresholdamount of time, wherein the threshold time varies depending uponmovement of the stylus; and deleting the at least one guideline inresponse to detecting movement of the stylus outside of the electronicink input area corresponding to the displayed content for longer thanthe threshold amount of time.
 2. The method of claim 1, furthercomprising: determining an angle that the electronic ink is beingwritten; and adjusting an angle of the at least one guideline inresponse to the angle the electronic ink is being written
 3. The methodof claim 1, wherein the at least one guideline comprises at least twoguidelines, the method further comprising: determining a height that theelectronic ink is being written; and adjusting a position of at leastone guideline of the at least two guideline in response to the height ofthe electronic ink is being written.
 4. The method of claim 1, wherein acolor is selected for the at least one guideline so that the at leastone guideline is a different color than the text.
 5. The method of claim1, further comprising: detecting a second position of the stylusrelative to the displayed content; and extending the at least oneguideline in a direction of the detected second position of the stylus,wherein the at least one guideline is extended by lengthening the atleast one guideline;
 6. A method of displaying guidelines, comprising:displaying content; detecting a position of a stylus relative to thedisplayed content; displaying at least one guideline in the content at alocation corresponding to the detected position of the stylus;collecting electronic ink produced by movement of the stylus;determining an angle that the electronic ink is being written; andadjusting an angle of the at least one guideline in response to theangle the electronic ink is being written.
 7. The method of claim 6,wherein the angle that the electronic ink is being written is greaterthan 10 degrees.
 8. The method of claim 6, wherein the angle that theelectronic ink is being written at is a first angle, the method furthercomprising: determining that the electronic ink is being written at asecond angle, the second angle varying from the first angle; andadjusting the angle of the at least one guideline in response to thesecond angle the electronic ink is being written.
 9. The method of claim6, further comprising: detecting movement of the stylus outside of anelectronic ink input area corresponding to the displayed content forlonger than a threshold amount of time, wherein the threshold timevaries depending upon movement of the stylus; and deleting the at leastone guideline in response to detecting movement of the stylus outside ofthe electronic ink input area corresponding to the displayed content forlonger than the threshold amount of time.
 10. The method of claim 6,wherein the at least one guideline comprises at least two guidelines,the method further comprising: determining a height that the electronicink is being written; and adjusting a position of at least one guidelineof the at least two guideline in response to the height of theelectronic ink is being written.
 11. A method of displaying guidelines,comprising: displaying content; detecting a position of a stylusrelative to the displayed content; displaying at least two guidelines inthe content at a location corresponding to the detected position of thestylus; collecting electronic ink produced by movement of the stylus;determining a height that the electronic ink is being written; andadjusting a position of at least one guideline of the at least twoguideline in response to the height of the electronic ink that is beingwritten.
 12. The method of claim 11, wherein the adjusting of theposition of the at least one guideline causes the at least twoguidelines to be positioned closer together.
 13. The method of claim 11,further comprising: determining an angle that the electronic ink isbeing written; and adjusting an angle of the at least two guidelines inresponse to the angle the electronic ink is being written.
 14. Themethod of claim 11, further comprising: detecting movement of the stylusoutside of an electronic ink input area corresponding to the displayedcontent for longer than a threshold amount of time, wherein thethreshold time varies depending upon movement of the stylus; anddeleting the at least two guidelines in response to detecting movementof the stylus outside of the electronic ink input area corresponding tothe displayed content for longer than the threshold amount of time. 15.The method of claim 11, further comprising: detecting a second positionof the stylus relative to the displayed content; and in response to thedetecting of the second position of the stylus, extending the at leasttwo guidelines in a direction of the detected second position of thestylus, wherein the at least two guidelines are extended by lengtheningthe at least two guidelines.
 16. A method of displaying guidelines,comprising: displaying content; detecting a position of a stylusrelative to the displayed content; displaying at least one guideline inthe content at a location corresponding to the detected position of thestylus; detecting a second position of the stylus relative to thedisplayed content; in response to the detecting of the second positionof the stylus, extending the at least one guideline in a direction ofthe detected second position of the stylus, wherein the at least oneguideline is extended by lengthening the at least one guideline; andcollecting electronic ink produced by movement of the stylus.
 17. Themethod of claim 16, further comprising: determining an angle that theelectronic ink is being written; and adjusting an angle of the at leastone guideline in response to the angle the electronic ink is beingwritten.
 18. The method of claim 16, further comprising: detectingmovement of the stylus outside of an electronic ink input areacorresponding to the displayed content for longer than a thresholdamount of time, wherein the threshold time varies depending uponmovement of the stylus; and deleting the at least one guideline inresponse to detecting movement of the stylus outside of the electronicink input area corresponding to the displayed content for longer thanthe threshold amount of time.
 19. The method of claim 16, wherein the atleast one guideline comprises at least two guidelines, the methodfurther comprising: determining a height that the electronic ink isbeing written; and adjusting a position of at least one guideline of theat least two guideline in response to the height of the electronic inkis being written.